Method and apparatus for applying bar code information to products during production

ABSTRACT

Bar code information is printed on a printable surface associated with a product, such as a label or container of the product, or the product itself, during a production run under the control of a printer computer. The bar code information may include two components of a composite bar code symbol, where the first component is either pre-printed or printed during a production run, and the second component is printed during the production run. The first component may identify a product that is carried in the containers, while the second component identifies a lot, batch, expiration date or commodity number. In another aspect, check data is used to confirm the accuracy of information that is used by a printer computer to control a printer. In another aspect, first and second bar code symbols portions are read to recover information, and a database is accessed to determine if the recovered information is consistent.

BACKGROUND OF THE INVENTION

[0001] This application claims the benefit of U.S. provisional patent application No. 60/348,000, entitled “System and method for supplementing bar coded products with additional bar codes,” filed Oct. 26, 2001, and incorporated herein by reference.

[0002] The present invention provides methods and apparatuses for applying bar codes to products on a production line, and also addresses the need for quality control in a production line.

[0003] Various types of bar code symbologies have been developed to meet the specific needs of different activities including manufacturing, warehousing, shipping and merchandising. Moreover, in the field of healthcare, the Food and Drug Administration has proposed requiring that manufacturers provide bar codes on all pharmaceutical and biological products. Such bar codes can identify data such as the National Drug Code (NDC), a lot or batch number and the expiration date. The NDC is a unique numerical code identifying the manufacturer, product, dosage, strength, and package size or type. The proposed rule is an attempt to reduce the number of errors in dispensing drugs in hospitals and other healthcare facilities. In practice, the bar code on a drug could be matched against a bar code associated with the patient and the patient's drug regime, such as by using bar code provided on a patient's wrist bracelet or medical file. The hospitals would obtain appropriate scanning equipment for scanning the drugs' bar code and the patient's bar code, and a computer database would process the data to inform the healthcare professional whether the correct drug/medicine has been obtained. Additionally, by bar coding the drugs' expiration dates and lot numbers, identification of expired and recalled drugs can be facilitated.

[0004] Bar codes include both one-dimensional (linear) (1-D) and two-dimensional (2-D) types. Linear, or 1-D symbologies include Universal Product Code (UPC)/European Article Number (EAN), Code 39, Codabar, the multi-color Pharmacode (Laetus), Code 128, Code 93, Telepen, the Reduced Space Symbology (RSS) family, including RSS-14, RSS Limited and RSS Expanded, ITF-14 (Interleaved 2 of 5) and ISSN/ISBN. 2-D symbologies include PDF417 (Portable Data File), micro PDF417, Data Matrix and MaxiCode. Moreover, a composite bar code symbology combines two or more bar code symbols. For example, a composite bar code may be formed by combining a 1-D symbol with a 2-D symbol. One example is the EAN.UCC (European Article Number—Uniform Code Council, Inc.) composite symbol. RSS composite symbols may be formed by combining an RSS linear symbol with a EAN.UCC 2-D Composite Component (CC). A composite bar code symbol may also include a 1-D symbol that is printed in two or more rows.

[0005] In particular, the RSS family contains three linear symbologies that can be used with the EAN.UCC system, RSS-14 encodes the full 14-digit Global Trade Identification Number (GTIN) in a linear symbol that can be scanned omni directionally. The GTIN is made up of one character for a packaging designator, two system digits, five characters for the manufacturer, five characters for the item and one check digit. It also has truncated and stacked formats. RSS Limited encodes the same 14-digits with packing indicators limited to zero or one in a linear symbol. RSS Expanded encodes EAN.UCC primary identification plus supplemental element strings such as weight and “best before” date in a linear symbol that can be scanned omni directionally. Moreover, this symbol can be printed in multiple rows as a stacked symbol. Furthermore, any RSS symbol can be printed as a standalone linear symbol or as part of a composite symbol with an accompanying 2-D composite component printed above the RSS linear component.

[0006] However, there are various technical challenges to bar coding products on a production line. For example, it is not clear how an appropriate bar code can be provided on small drug products, such as a unit dose product, which are commonly used due to their convenience for hospitals, healthcare professionals and patients. These challenges include accommodating the significant amount of information that must be provided in a limited available space. Moreover, the use of bar codes present challenges on the production line for all products when information specific to the production run, such as lot, batch, expiration date or commodity number are bar coded. Furthermore, quality control considerations on the production line must be addressed to ensure that the correct bar code information is applied to the products.

[0007] The present invention addresses the above and other issues.

SUMMARY OF THE INVENTION

[0008] The present invention provides methods and apparatuses for printing bar code information on products on a production line.

[0009] One aspect of the invention provides a method for applying bar code information to products in a production line. The method involves printing bar code information related to the product substantially in real-time with respect to a production line. The bar code information may be printed on any printable surface related to the product, including a container and a label of the product, or on the product itself. For example, the information may relate to a production run, such as lot, batch, expiration date or commodity number of the product. In the area of drug manufacturing, in particular, the commodity number may be a six-digit number assigned to each validated label by the manufacturer. Such labels are validated by an agency such as the FDA. The commodity number identifies the formulation of a drug, such as how it is produced, e.g., what ingredients, concentrations, temperature, volumes and pressures are used. Having the commodity number encoded in the bar code allows a machine-readable method to verify that the correct label is being used in an automated fashion. Other bar code information, such as relating to the identity of the product, may be printed in real time in the same or another bar code indicia or symbol, or pre-printed on the label or the product, etc.

[0010] In one embodiment, a method for applying bar code information to a product on a production line includes printing bar code information on a printable surface associated with the product, such as a label or a container of the product, during a production run, that supplements bar code information associated with the product. The supplemental bar code information may relate to parameters of the production run, e.g., such as a lot, batch, expiration date and commodity number of the products. The bar code information associated with the product may be a pre-printed bar code symbol that identifies the product and/or information for using the product, e.g., directions for administering a drug, preferred storage conditions (such as temperature range) and the like. Moreover, the bar code information may be provided in a composite bar code symbol. Advantageously, by printing the bar code information associated with the production run during the production run, e.g., substantially in real-time, the production process proceeds more efficiently. For example, there is no need to prepare and stockpile labels for different production runs, which can lead to errors if the wrong labels are used for the wrong production run. Moreover, the bar coded indicia can be easily reconfigured on the production floor or other local or remote location by re-programming a printer computer to reflect changes in the production run information.

[0011] In another embodiment, a method for applying bar code information to a product on a production line includes programming a computer with information associated with a production run, and printing, responsive to the programming, bar code indicia on a printable surface associated with the products during the production run that carries the production run related information. Various bar code indicia may be printed, including a single 1-D or 2-D bar code, or a composite bar code. Moreover, the computer may be programmed with the production run related information in various ways, such as by scanning a bar code, e.g., on a work order, receiving a manual user input via a keyboard or the like and receiving signals electronically, such as from a computer that is local to the production line, in the same facility, or remotely located, e.g., in another city. The bar code information may be printed using ink jet printing, laser marking, thermal transfer printing, thermal printing, thermal printing, electrographic printing, laser printing or flexographic printing, for instance.

[0012] In another embodiment, an error detection method for use in a production line in which bar code information is applied to products includes receiving first check data at a printer computer that controls a printer on the production line, where the first check data is calculated at another computer based on first information associated, at least in part, with a production run on the production line. The method further includes computing second check data at the printer computer based on second information associated, at least in part, with the production run and determining whether the first and second check data agree. If they agree, the printer may be instructed to print the second information on the products as at least one bar code symbol during the production run. An error message may be set if the first and second check data do not agree, e.g., to alert an operator on the production line or other location that there is a problem. Moreover, the first check data may be received at the printer computer via an electronic transmission from another computer. The second information may be provided to the computer also via an electronic transmission or via a manual user entry or bar coded work order, for use in computing the second check data. The first and second information may include a product identifier and production run related information. This method may be used, e.g., to ensure that the production run-related information is accurately communicated to the printer computer.

[0013] Furthermore, the check data provided to the printer computer need not be continuously provided. For example, it may be provided once during a production run or other period in which the production run related information does not change. Or, the check data may be provided periodically during a production run. The check data may further be used by an inspection station that scans the bar code after it is printed on the product or label to confirm the bar code is accurate. However, it is not necessary to print the check data in the bar code information.

[0014] In another embodiment, an error detection method for use in a production line in which bar code information is applied to products includes reading first bar code indicia from a printed surface associated with at least one product during a production run on the production line to recover first information. Furthermore, second bar code indicia is read from the printed surface during the production run to recover second information, and the first and second information are analyzed to see if they are consistent. For example, the first bar code indicia may designate a product identifier such as a specific drug, while the second bar code indicia identifies a commodity number, in which case the information is analyzed to determine if the commodity number is known to be associated with the particular drug. In practice, a number of commodity numbers may be associated with the particular drug.

[0015] Corresponding apparatuses are also presented.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016]FIG. 1 illustrates a production line that prints bar code information on product labels in accordance with one embodiment of the invention;

[0017]FIG. 2 illustrates a production line that prints bar code information on product containers in accordance with one embodiment of the invention;

[0018]FIG. 3(a) illustrates a label with first bar code information in accordance with one embodiment of the invention;

[0019]FIG. 3(b) illustrates a label with first and second bar code information of a composite bar code in accordance with one embodiment of the invention;

[0020] FIGS. 3(c)-3(f) illustrate pre-printed labels and labels printed during production in accordance with different embodiments of the invention;

[0021]FIG. 4 illustrates a dot pattern fed to a printer;

[0022]FIG. 5(a) illustrates a bar code with two dot lines per tier, and a separator pattern;

[0023]FIG. 5(b) illustrates a scan line through a bar code tier with one dot line per tier;

[0024]FIG. 5(c) illustrates a scan line through a bar code tier with two dot lines per tier;

[0025]FIG. 6 illustrates a process for determining whether portions of a composite bar code carry consistent information; and

[0026]FIG. 7 illustrates an error detection process using check data.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0027] In one aspect of the invention, labeling of products, including small product containers such as vials and ampoules that carry drugs, is done on a production line at high speeds. For instance, a typical vaccine label is very small, measuring, e.g., 0.75×2 inches. It is therefore difficult to print a lot of information on such labels, such as the product name, Global Trade Identification Number (GTIN), Uniform Product Code (UPC), NDC number with manufacturer's number, product number, packaging indicator (e.g., describing the type of packaging), lot or batch number, expiration date and commodity number. In addition to the machine readable bar code information, it is desirable to provide certain human readable text, such as the name of the drug or other product identifier. As an example, a small vial might have the following information printed on it in bar coded and human readable form: “NDC 01234 56789, Lot Number USA123, Expiration Date Mar. 3, 2004.” Moreover, this text must meet certain size and typeface requirements. Previously, the problem of limited label space could only be solved by increasing the label size. However, this is not possible for many drug related single dose packages that are used by inserting them into housings or other structures that have a fixed size. Moreover, even if the package size can be increased, various drawbacks result, including increased production costs, shipping costs and storage space requirements. Moreover, available bar code symbologies may not be efficient enough to encode the required information in the allotted space.

[0028] Similarly, in the food industry, information that previously could not be bar coded due to space limitations can now be bar coded with the techniques disclosed herein, e.g., on a sticker that is attached to fruits or vegetables, or with a bar code printed on a milk carton or the like. This information may include country of origin, whether pesticides or hormones were used in preparing the product, what types, if any, health warnings related to a product such as possible allergic reactions, and so forth.

[0029] In one aspect, the present invention solves these problems by using compact bar code technology such as Reduced Space Symbology (RSS) to allow the desired information to be placed on a product within the available area. Moreover, by providing a sufficiently compact bar code symbology, the information can be encoded with room available to print the encoded data in human-readable form. This enables the healthcare provider or other person to identify the product even if a bar code scanner is not available. Additionally, having the product identification number (e.g., GTIN, NDC or UPC) along with the lot and expiration date makes it possible for a production line to be more fully automated.

[0030] Moreover, having the bar coded GTIN, lot and expiration date on a single dose vial or ampoule can profoundly change the pharmacist's or other healthcare provider's ability to administer and record a prescription. The pharmacist would normally, upon receiving a doctor's prescription, fill out a computerized form, print out a label, and proceed to fill a bottle or vial in the pharmacy. However, in accordance with one aspect of the invention, which may provide a bar-coded vial, the pharmacist can fill in the computerized prescription by scanning from the vial that has already been selected from inventory. As the drug vial is scanned, its NDC number is looked up in a database and its information is filled out on screen. In other words, the pharmacist can check the selection by looking at the screen before printing a label and dispensing the drug.

[0031]FIG. 1 illustrates a production line that prints bar code information on product labels in accordance with one embodiment of the invention. The production line, shown generally at 100, has several components and may take on many different configurations. In one possibility, a container supply bin or station 125 supplies successive product containers or packages to a filling station 155 using a conveyor belt or the like. The containers may be vials, ampoules, tubes or the like such as for single-dose drug containers (e.g., a 2-ml. single dose fliptop glass vial or a 1-ml. single dose glass ampoule). However, the present invention is meant to encompass essentially any container type, including larger containers such as 55-gallon drums. For example, the drum may have a first bar code on it when empty, and a second bar code may be applied, e.g., by thermal imaging, when the drum is filled, to identify the contents. The conveyer or other mechanism accepts the individual units/containers, holds them in a proper orientation to be worked with, and moves them around the production line from station to station. At the filling station 155, the containers are filled with the desired product and sealed using known manufacturing techniques. Printed instructions for use and packaging padding may also be provided.

[0032] A label applicator 157 applies labels to the product containers using known techniques after the labels exit from the label printer 145. For example, the labels may have an adhesive backing. In one approach, the label applicator 157 receives labels from a label printer 145 with bar code information printed thereon. Moreover, the label stock 135 used by the label printer 145 may have pre-printed bar code information. Pre-printing refers to printing that can occur before a production run, when the containers are being processed at the different stations. A number of pre-printed labels in the label stock 135 can therefore be stored ahead of time, e.g., in rolls, and used when needed by the label printer 145. Note that labels may be pre-printed at a location that is proximate to, or remote from, the production line 100. For instance, the labels may be pre-printed at a facility of an outside vendor.

[0033] Moreover, in one embodiment, the labels are pre-printed with the first part of a two or more part composite bar code. This first part may comprise a linear bar code in a stacked or non-stacked format. For example, in FIG. 3(a), the label 300 may be pre-printed with a first bar code symbol or indicia 310 that is provided using the RSS-14 stacked format that encodes information such as a product identifier. The labels in the label stock 135 may also include general information such as the manufacturer's name and logo, but do not include specific information related to a production run, such as lot or batch number, expiration date and commodity number, since this information is generally not available before a production run, and it is desirable to have a generic stock label that can be used subsequently with different production runs at different production lines as needed.

[0034] In another possibility, the labels are not pre-printed with bar code information, and all bar code information, including the example first bar code symbol 310, supplemental, second bar code symbol 330 and associated human readable information 320 is printed in real-time during a production run by the printer 145.

[0035] Moreover, information such as the product identifier may or may not be pre-printed. In some cases, such as when the production line 100 is dedicated to processing a specific product such as a specific drug, at least for a specific period of time, a number of stock labels 135 can be pre-printed with a product identifier bar code, and additional information related to the production run can be added in a supplemental, second bar code symbol to form a composite bar code symbol along with the associated human readable data. The pre-printed labels may also include the human readable information corresponding to the first and/or second bar code information, as well as other required information.

[0036] In the approach illustrated in FIG. 1, the label printer 145 prints the bar code and human readable information on the labels before the label is attached to the container at the label applicator 157. However, the printing may occur after the label has been attached to a product container by positioning the printer appropriately in the production line 100. In a further approach, the printing may occur at multiple printers, both before and after the label is attached to the container. Moreover, the printing may occur directly on the product container or other printable surface without using a label, as discussed further in connection with FIG. 2.

[0037] If the first bar code information has been pre-printed on the label, the printer 145 need only print the second bar code information and human readable information during a production run. If the first bar code information has not been pre-printed on the label, the printer 145 may print both the first and second bar code information along with the human readable information. Alternatively, the first and second bar code information may be respective independent bar codes of any type. Moreover, more than two bar code symbols may be provided if needed or desired. For example, a composite bar code may be printed that includes a linear bar code stacked in two or more rows with a 2-D bar code on top. Furthermore, multiple independent bar codes can be printed.

[0038] The printer 145 may be of various types whose requirements are based on factors such as speed and resolution. Both in-line and non-in-line printers may be used. In-line printers allow the bar code and human readable information to be printed on the labels or other printable surface as the labels are moving on the production line. This can improve overall production output relative to conventional techniques. For example, a conventional technique for applying an expiration date to a container is to stamp the container with a metal stamp that is manually created. However, this approach requires the labels to come to a complete stop before they can be stamped, and is subject to errors since it is manually configured, and the wrong date may be used, for example. Additionally, further problems are caused by the degradation of the metal stamp as the print head wears out after repeated stampings, causing the stamped information to become less distinct. This can cause errors with vision systems used for inspections that image the stamped information and compare it to a digitized reference image since the stamped information will gradually depart from the reference image. At this point, the production line would have to be stopped, and a new reference image created or the stamp changed. Moreover, the stamp is not suitable for printing on curved surfaces. The use of the printing techniques disclosed herein overcomes these and other problems.

[0039] The printer 145 should be able to accommodate typical speeds on a production line of roughly 50-650 units per minute, while the resolution of the printer must be sufficient to print the bar code symbol in the available size and space. For example, an RSS Limited symbol must have 74 modules in the space provided. A module is the smallest building block for a bar code, e.g., the thinnest line that can be used for a portion of a 1-D bar code, or the smallest square that can be used for a portion of 2-D bar code. In one example of a compact label application, the linear portion of the bar code can be printed at 74 modules in 0.75 inches or just under 100 pixels or printer dots per inch.

[0040] Printer types that may be used include inkjet printers, laser markers, thermal transfer printers, thermal printers, electrographic printers and flexographic printers. With inkjet printers, inks are sprayed, via droplets of an ink solution, onto a label or other product surface. One example is the Domino A300 inkjet printer. Laser markers typically use a Nd³-YAG or CO₂ laser that leaves an image by burning away portions of a special black-coated paper. A laser marker is also referred to herein as a printer. One example is the Autolase® from Automated Laser Corporation, Fort Wayne, Ind. With thermal transfer printers, a print head that contains resistive elements in a linear array heats ink-coated films (ribbons). The head is in direct contact with the uncoated side of the ribbon and the ink-coated side of the ribbon is in direct contact with the label's printable surface. The ink is heated, causing it to melt and adhere to the printing surface. Specially formulated materials are used for the printable surface of the label to enhance high ink transfer efficiency and adhesion. One example is available from Zebra Technologies Corporation, Vernon Hills, Ill. Thermal printers are useful for applications with a short shelf life. One example is the Informatics Thermal Bar Code Printer. Electrographic printers, also known as electron beam imaging printers, and laser printers, are also readily available and may be used.

[0041] The inkjet and laser marker are non-contact printers since they do not touch the label or other printable surface, while the thermal and thermal transfer printers are contact printers. Non-contact printers are particularly suitable for printing labels after they have been applied to a curved surface such as a rounded container, or for printing directly on the rounded container. In fact, printing on such a rounded surface can be preferable since the information is printed from the same perspective from which it will be subsequently read by a scanner. In contrast, when a flat label is printed and subsequently applied to a rounded container, the edges of the printed information appear to be distorted to a scanner, which may cause reading errors. For example, a vertical bar at the edge of a bar code will appear to be thinner when viewed from the perspective of the center of the bar code.

[0042] The use of such printers that are computer-controlled on a production line provides a significant advantage over conventional techniques by allowing information that relates to a specific production run to be updated as required and printed automatically. For example, the printer 145 can be reconfigured at the start of a production run, or during a production run, for different printing formats, e.g., bar code type, size, stacked vs. non-stacked, composite vs. non-composite, and so forth. In particular, the printer 145 may be driven by images provided to it by the printer computer 120, such as one provided by Barcode Technology Inc. (BTI). The printer computer 120 runs a software application that, among other things, takes an input for specified information associated with a production run and creates a corresponding bar code image or indicia. This bar code image, which may be, e.g., the 2-D bar code image that is combined with a linear (1-D) bar code such as the RSS Limited or stacked bar code to form a composite bar code, may also include a separator pattern (FIG. 5(a)). With an inkjet printer, this image is fed to the printer as a dot pattern, e.g., as shown in FIG. 4, which includes a 1-D portion on the bottom and a 2-D portion on the top, which together form a composite bar code symbol. The laser marker and thermal printers may be similarly driven to provide the desired printing using techniques known to those skilled in the art. The printer computer 120 may also receive information from a bar code scanner 115, e.g., which reads one or more bar codes such as from a work order printed on a sheet of paper.

[0043] Inkjet printers present some challenges in achieving a readable bar code since only a limited number of dots in the height and width of the image can be printed. This is a severe limitation, in particular, when printing both the 2-D part of a composite bar code, a print separator and the human readable information. The dot pattern of FIG. 4, a portion of which is shown in greater detail in FIG. 5(a), addresses this problem by using a bar code with two dot lines per tier, with a total of six tiers, and a separator pattern. Here, every two lines or rows of dots represent one tier of the 2-D part of a composite symbol. In particular, the problems inherent in the reading of bar code images can be overcome by devoting two or three lines of dots to each tier of the 2-D data. If only one dot line is used for a single 2-D data tier, there is a risk that the bar code scanner would scan through different sections of the dots, which could cause erroneous results. In particular, FIG. 5(b) illustrates a scan line through a bar code tier with one dot line per tier. Since the scan direction is often at an angle to the tier direction due to user handling of the scanner and/or bar coded container, the laser scan line may pass through two dots in a way that causes the perceived widths of the dots to be unequal, which can result in an improper reading. In contrast, by providing two or more overlapping dot lines per tier, as shown in FIG. 5(c), the perceived widths of the scanned dots will be generally consistent, thereby eliminating the reading problem. For example, using the above approach, with a printer such as the Domino A300, 21/2=10 tiers can be accommodated in the bar code. Moreover, assuming the bar coded information is to include expiration date and lot or batch number, the number of characters used to represent this information must be limited, e.g., to eight characters.

[0044] Once the printer 145 has received the bar code image from the computer 120, e.g., in the form of a dot pattern, further adjustments to the printer software image may be made, including, e.g., the orientation, the distance between dots, and the distance between columns. Moreover, the speed of the production line may be synchronized with the printer's capabilities. The printer 145 may have an adjustment for the tolerance of the variations in speed and variations in print gain, e.g., the size of the dot due to ink spread. Furthermore, adjustments can be made by changing the height of the printer head above the labels or other surfaces to be printed on, and the vertical spread of the dots in the dot column.

[0045] There is also the problem of registration, which amounts to control of the x and y-dimensions of the placed bar code on the label or product. In particular, the printer 145 must know when to print the bar code. For example, it may be necessary to print a 2-D bar code symbol along with the human readable data so that they fall within acceptable distances of, and do not overlap with, an existing bar code symbol. The particular tolerances that apply will depend on the specific symbology. For example, the RSS symbologies allow for relatively loose tolerances. Moreover, scanners typically only require that a linear bar code be seen in the same field of vision as the 2-D bar code, regardless of its x-dimension or placement, or even orientation, before it hunts for and reads the 2-D bar code. Tests of one possible embodiment have shown that the x-dimension may vary from 19-39 mils. The x-dimension adjustment may be accomplished by a photosensitive eye that reads the label or other printed surface to locate a registration index mark, typically a ⅛ inch diameter black dot pre-printed on the label along with the other information, as shown in FIGS. 3(a) and 3(b), after which the printer is signaled to begin a new print cycle. For example, if a registration mark appears with every label, which is 1⅝ inch in length, and there is a ⅛ inch space between labels, a printer rated at 720 inches per minute could produce 720″/1.75″=411 labels per minute. The y-dimension control is accomplished by adjusting the bracket that holds the print head in relation to the labels or other surfaces passing underneath.

[0046] The printer 145 may be controlled by a computer 120, as discussed, which receives input instructions from a scanner 115, a user, e.g., manually, via a keyboard and/or a remote computer 124. In one approach, the user manually enters information into the computer 120 to cause it to print specific information on the labels or other product surfaces. The user may obtain this information in human readable form from a printed work order, for instance, or from a telephone call or the like, and key in the information. In another approach, the printer is configured, e.g., re-programmed, via information obtained from the scanner 115, which may scan in printed bar-coded instructions, e.g., that identify the production run related information. This approach avoids problems with data entry errors that may be keyed in by the user. The bar-coded instructions may be printed using a computer in a known manner. For example, a first worker who is in charge of scheduling the activities of one or more production lines may print the bar coded work order for delivery to a second worker who operates the production line equipment. The second worker then places the work order in front of the scanner 115 to have the information read in to re-program the computer 120.

[0047] In another approach, the computer 124 communicates the information to be printed directly to the printer computer 120 via any known data communication scheme, e.g., such as TCP/IP. Alternatively, the computer 124 is not networked t the computer 120, but communicates with the computer 120 via, e.g., a Small Computer System Interface (SCSI). Furthermore, the computer 124 may represent a central/master computer that provides instructions to local computers that are associated with different production lines in different locations, whether they are in the same facility, or in different facilities in different geographic areas. Although indicated as being remote in FIG. 1, the computer 124 may be located essentially anywhere.

[0048] Additionally, an inspection station 180 may be provided on the production line 100 that receives data from a video camera 182 and a barcode reader 184, which in turn observe finished products that exit form the label applicator 157. The video camera 182 may be a CCD camera used to provide a visual inspection of various factors such as label placement, label content, presence of a label and a seal and presence of a bar code and human readable data. The inspection station 180 may display information, such as error messages, on a CRT screen/monitor to inform an operator of any problems. The bar code reader or scanner 184 may scan the bar code printed on the product to verify its accuracy and consistency, for example, as discussed further in connection with FIG. 6. After the products have been labeled, if applicable, scanned and checked, they may be assembled into multiple unit packages and shipped to their destination.

[0049]FIG. 2 illustrates a production line 200 that prints bar code information on product containers in accordance with one embodiment of the invention. The printer 145′ may print directly on the product container or other printable surface associated with a product, such as an “outsert” or printable tab that is attached to the container or other packaging. An outsert is analogous to an insert such as printed instructions that may be inserted inside a product container. Moreover, printing may occur on the product itself. For example, for a medication in tablet form, printing may occur on the tablet using digestible ink. For non-digested medications, printing may occur on a patch on the medication.

[0050] In this case, there is no need to print on a label and apply the label to a container, although both approaches may also be used together.

[0051] Moreover, note that the order of the stations shown in the production lines 100 and 200 is only an example. For instance, for the production line 100 of FIG. 1, the printer 145 may be located after the label applicator 157, in which case the labels are printed after being applied to the containers. Thus, printing can occur on a label: (a) only before the label is applied to a container, (b) both before the label is applied to a container and after, or (3) only after the label is applied to a container.

[0052] Furthermore, referring to FIGS. 3(c)-3(f), more than one printer may be used so that printing can occur at multiple locations on the production line. For example, due to the limited vertical range of a single printer, it may be desirable to divide the printing of bar code information between two or more printers. A first printer can print the bottom half of the bar code, while the second printer prints the top half, for instance. In a specific example, assuming a 1-D bar code indicia has been pre-printed on a label, and a 2-D bar code indicia is to be added during a production run to form a composite bar code, a bottom half of the 2-D bar code may be printed on one printer, while the top half of the 2-D bar code is printed on another printer. Moreover, in another variation, the containers may be filled after they are printed. FIGS. 3(c)-3(i) illustrate pre-printed labels and labels printed during production that illustrate some of the various options. Note that although labels are referred to here, the discussion applies as well to other printable surfaces, such as containers, packaging and outserts. In FIG. 3(c), the label has no pre-printed bar code, and two bar codes 352 and 354 are printed during production. In FIG. 3(d), the label has a first bar code 362 pre-printed, and a second, supplemental bar code 364 is printed during production. In FIG. 3(e), the label has a first part or indicia 374 of a bar code 372 pre-printed, and the second, supplemental part or indicia is printed during production to complete the bar code 372. That is, the indicia 372 and 374 are joined or concatenated vertically. Similarly, in FIG. 3(f), the label has a first part or indicia 384 of a bar code symbol 382 pre-printed, and the second, supplemental part or indicia is printed during production to complete the bar code 382. That is, the indicia 382 and 384 are joined or concatenated horizontally.

[0053]FIG. 6 illustrates a process for determining whether bar code portions of a composite bar code carry consistent information. This may be done for portions of a composite bar code, portions of a single bar code and multiple bar codes. For example, for a composite bar code 600, the invention may be used to verify that information carried by the first portion or indicia 610 and information carried by the second, supplemental portion or indicia 620 are consistent. In this approach, the bar code reader 184 reads and decodes the respective bar code portions 610, 620 and provides the decoded information to an analysis function 188, which analyzes the received information to determine if there is a known correspondence. The analysis function 188 may be implemented at the inspection station 180, for instance. For example, the first bar code portion 610 may include a product identifier such as the National Drug Code (NDC) of a specific drug (e.g., drug A), while the second bar code portion 620 includes a commodity number, which identifies one of multiple different possible formulations of the specific drug (e.g., formulation A1). The analysis function 188 is pre-programmed with information that drug A is know to have formulations A1, A2 and A3, drug B is known to have formulations B1 and B2, and so forth. The different formulations may represent different dosages, concentrations or delivery methods, e.g., tablet, injectable, IV drip, or temperature, volumes and pressures used during manufacture.

[0054] The analysis function 188 can use appropriate logic, include lookup tables, databases or other known software techniques, to determine that the formulation A1 which is identified by the commodity number is consistent with the drug A, and output a “consistent” decision. However, if the product identifier was for a drug B, and the commodity production number was for a formulation A1, the analysis function 188 would output an “inconsistent” decision. In this case, an error may have occurred in the printing of one of the bar code portions or symbols. The error can be signaled by an audible alarm or a visual message sent to an operator via a computer display or the like.

[0055]FIG. 7 illustrates an error detection process using check data. In a further aspect of the invention, a local or remote computer, illustrated by computer 124, may convey check data such as a check digit to the printer computer 120 at one or more production lines to ensure data integrity. For example, during the production of products such as drugs, batches of the product are prepared, and information related to a production run, such as lot or batch number, expiration date and commodity number, are determined when the batch is ready for bottling. The expiration date is based on periods of time calculated for the safe shelf life for each product, while the batch or lot number is an assigned number and/or text identifier based on the batch or lot identification system used. In a manual entry approach 126, this information, along with the product identifier, may be written down and conveyed to a user at the production line who manually enters the information into the printer driver software at the computer 120. In a computer communication approach 128, the information is transmitted electronically from the computer 124 to the printer computer 120 via a computer network, serial link, or other wired or wireless electronic link. In a bar-coded work order approach 127, the information is printed on paper as one or more bar code symbols by the computer 124, or other computer, and the paper is scanned in by a bar code scanner associated with the computer 120 as a work order. As a specific example, the information from which the check data is calculated may include a data string based on a product identifier (PRODUCT ID), a lot number (LOT) and an expiration date (EXP. DATE). This is also the information that is printed by the printer 145 as a bar code on the products during the production run.

[0056] To ensure that the computer 120 has received the proper information, corresponding software may be implemented at the computers 120 and 124 to compute check data, such as a check digit, based at least in part on the production-run related information using any known check digit algorithm. One example is the modulus 10 algorithm, also known as the LUHN formula. The check data can then be transmitted from the computer 124 to the printer computer 120, where the printer computer 120 calculates its own check data based on the information that it receives, e.g., via manual entry 126, a bar coded work order 127, or a computer communication 128. The check data can be transmitted electronically via the computer communication path 128 or a separate communication path. The check data calculated by the computer 120 is then compared to the check data it receives from the computer 124 to determine if they agree. If they do agree, it is assumed that the production-run related information and other information, if applicable, has been accurately communicated to the printer computer 120, and a corresponding bar code symbol may be printed on an example product 700. If the check data do not agree, the software at the printer computer 120 may set an error message, e.g., to alert an operator of the problem, via a monitor 121. A mismatch indicates that either the check data from the computer 124 was not accurately received by the printer computer 120, or the information from which the check data was generated at the computer 124, e.g., PRODUCT ID+LOT+EXP. DATE, was not accurately received by the printer computer 120. If there is an error, the information can be re-communicated to the printer computer 120.

[0057] Moreover, the check data may be used by an inspection station 180 and bar code reader 184 that scans the bar code symbol after it is printed on the product 700 to confirm that the bar code is accurate. In particular, the bar code information is scanned and check data is computed from the scanned in information by the inspection station 180. This check data is then compared to check data received from the printer computer 120 to confirm they match. An error message may be sent to the operator monitor 121 if the check data do not agree and/or an audible alarm may be set or the like. The operator can then take an appropriate action such as stopping the production line or personally inspecting the products.

[0058] Accordingly, it can be seen that the present invention provides methods and apparatuses for applying bar code information to products on a production line. In one aspect of the invention, bar code information is printed on a printable surface of a product during a production run that includes two components, where the first component is either pre-printed or printed real-time during a production run, and the second component is printed during the production run. The first component may include a product identifier, and the second component may include information related to the production run, such as a lot or batch number, commodity number and expiration date for the product. In another aspect, check data is used to confirm the accuracy of production-run related information that is received by a printer computer for use in printing a bar code. When encoded into a printed bar code, the check data may further be used by an inspection station to verify that the bar code was printed accurately on the product. In another aspect, bar code symbol portions are verified for consistency by scanning them in after they have been printed, and accessing a database to verify that information associated with the symbol portions is consistent.

[0059] While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as will be evident to those skilled in this art may be made without departing from the spirit and scope of the invention, and the invention is thus not to be limited to the precise details of methodology or construction set forth above as such variations and modification are intended to be included within the scope of the invention. 

What is claimed is:
 1. A method for applying bar code information to a product on a production line, comprising: printing, on a printable surface associated with the product, and during a production run, bar code information that supplements bar code information associated with the product; wherein the supplemental bar code information provides information associated with the production run.
 2. The method of claim 1, wherein: the bar code information associated with the product is pre-printed on the printable surface.
 3. The method of claim 1, wherein: the supplemental bar code information identifies at least one of a lot, batch, expiration date and commodity number associated with the production run.
 4. The method of claim 1, wherein: the bar code information associated with the product identifies at least one of the product and information for using the product.
 5. The method of claim 1, wherein: the supplemental bar code information and the bar code information associated with the product form a composite bar code.
 6. The method of claim 1, wherein: the printable surface comprises a label.
 7. The method of claim 6, wherein: the printing occurs before the label is applied to a container of the product.
 8. The method of claim 6, wherein: the printing occurs after the label is applied to a container of the product.
 9. The method of claim 1, wherein: the printable surface comprises a container of the product.
 10. The method of claim 1, wherein: the printable surface comprises a tab associated with the product.
 11. The method of claim 1, wherein: the printing comprises printing using at least one of ink jet printing, laser marking, laser printing, electrographic printing, flexographic printing, thermal transfer printing, thermal printing and electrographic printing.
 12. The method of claim 1, wherein: the supplemental bar code information is concatenated horizontally with the bar code information associated with the product.
 13. The method of claim 1, wherein: the supplemental bar code information is concatenated vertically with the bar code information associated with the product.
 14. An apparatus for applying bar code information to a product on a production line, comprising: means for printing, on a printable surface associated with the product, and during a production run, bar code information that supplements bar code information associated with the product; wherein the supplemental bar code information provides information associated with the production run.
 15. A method for applying bar codes on a production line, comprising: programming a computer with information associated with a production run; printing, responsive to the programming, during the production run, and on a printable surface associated with a product on the production line, bar code indicia that carries the information.
 16. The method of claim 15, wherein: the information carried by the bar code indicia identifies at least one of a lot, batch, expiration date and commodity number associated with the production run.
 17. The method of claim 15, wherein: the programming comprises scanning a bar code to provide the computer with the information.
 18. The method of claim 15, wherein: the programming comprises receiving a manual user input to provide the computer with the information.
 19. The method of claim 15, wherein: the programming comprises receiving an electronic transmission to provide the computer with the information.
 20. The method of claim 15, wherein: the printing comprises printing using at least one of ink jet printing, laser marking, laser printing, electrographic printing, flexographic printing, thermal transfer printing, thermal printing and electrographic printing.
 21. The method of claim 15, wherein: the printable surface comprises a label.
 22. The method of claim 15, wherein: the printable surface comprises a container of the product.
 23. An apparatus for applying bar codes on a production line, comprising: means for programming a computer with information associated with a production run; means for printing, responsive to the programming means, during the production run, and on a printable surface associated with a product on the production line, bar code indicia that carries the information.
 24. An error detection method for use in a production line in which bar codes are applied to products: receiving first check data at a printer computer that controls a printer on the production line; wherein the first check data is calculated at another computer based on information associated, at least in part, with a production run on the production line; receiving the information at the printer computer; computing second check data at the printer computer based on the received information; and determining whether the first and second check data agree.
 25. The method of claim 24, further comprising: instructing the printer to print, during the production run, on a printable surface associated with a product, and when the first and second check data agree, bar code indicia that carries the received information.
 26. The method of claim 24, further comprising: setting an error message if the first and second check data do not agree.
 27. The method of claim 24, wherein: the first check data is received at the printer computer via an electronic transmission from the another computer.
 28. The method of claim 24, wherein: the information is received at the printer computer via an electronic transmission from the another computer.
 29. The method of claim 24, wherein: the information is received at the printer computer via a manual user entry.
 30. The method of claim 24, wherein: the information is received at the printer computer by scanning a bar code.
 31. The method of claim 24, wherein: the information comprises a product identifier and at least one of a lot, batch, expiration date and commodity number associated with the production run.
 32. An error detection apparatus for use in a production line in which bar codes are applied to products: means at a printer computer for receiving first check data; wherein the printer computer controls a printer on the production line, and the first check data is calculated at another computer based on information associated, at least in part, with a production run on the production line; means at the printer computer for receiving the information; means at the printer computer for computing second check data based on the received information; and means for determining whether the first and second check data agree.
 33. An error detection method for use in a production line in which bar codes are applied to products: reading first bar code indicia from at least one product during a production run on the production line to recover first information therefrom; reading second bar code indicia from the at least one product during the production run to recover second information therefrom; and determining if the first and second information are consistent.
 34. The method of claim 33, wherein: the first bar code indicia is provided pre-printed; and the second bar code indicia is printed during the production run.
 35. The method of claim 33, wherein: the first and second bar code indicia form a composite bar code symbol.
 36. The method of claim 33, wherein: at least one of the first and second bar code indicia includes information relating to the production run.
 37. An error detection apparatus for use in a production line in which bar codes are applied to products: means for reading first bar code indicia from at least one product during a production run on the production line to recover first information therefrom; means for reading second bar code indicia from the at least one product during the production run to recover second information therefrom; and means for determining if the first and second information are consistent. 